package com.example.admin.testdemo.activity;

import android.widget.TextView;

public class MainBoardUtil {

    public static  void showMainBoardInfo(TextView tv,byte[] buffer){
        StringBuffer sb=new StringBuffer();
        sb.append("出货状态：");
        sb.append(getoutGoodsStastus(buffer[7]));
        sb.append(", ");
        sb.append("当前步骤：");
        sb.append(getoutGoodsStep(buffer[8]));
        sb.append(", ");
        sb.append("错误代码：");
        sb.append(getoutGoodsErrorCode(buffer[9]));
        sb.append(", ");
        sb.append("光眼：");
        sb.append(getoutGoodsResult(buffer[10]));
        sb.append(", ");
        tv.setText(sb.toString());
    }
    public static  String[] showMainBoardInfo(byte[] buffer){
        String[] temp=new String[6];
        temp[0]=String.format("%02X ", buffer[5]);
        temp[1]=getTemp(buffer);
        temp[2]=getoutGoodsStastus(buffer[8]);
        temp[3]=getoutGoodsStep(buffer[9]);
        temp[4]=getoutGoodsErrorCode(buffer[10]);
        temp[5]=getoutGoodsResult(buffer[11]);
        return temp;
    }

    private static  String getTemp(byte[] buffer){
        StringBuffer sb=new StringBuffer();
        for(int i=14;i<21;i++){
           sb.append(String.format("%c ", buffer[i])) ;
        }
        return sb.toString();
    }





    private static String getoutGoodsErrorCode(byte temp){
        String s="未定义";
        if(temp==(byte)0x00){
            s="正常";
        }else if(temp==(byte)0x01){
            s="挡板打开错误";
        }else if(temp==(byte)0x02){
            s="挡板关闭错误";
        }else if(temp==(byte)0x03){
            s="升降台前行未到位";
        }else if(temp==(byte)0x04){
            s="升降台回位失败";
        }else if(temp==(byte)0x05){
            s="没有检测到掉货";
        }
        return s;
    }
    private static String getoutGoodsStep(byte temp){
        String s="未定义";
        if(temp==(byte)0x00){
            s="空闲";
        }else if(temp==(byte)0x01){
            s="打开防盗挡板";
        }else if(temp==(byte)0x02){
            s="控制升降台达到出货位置";
        }else if(temp==(byte)0x03){
            s="出货";
        }else if(temp==(byte)0x04){
            s="控制升降台回到起始位置";
        }else if(temp==(byte)0x05){
            s="关闭防盗挡板";
        }else if(temp==(byte)0x06){
            s="关闭防盗挡板";
        }else if(temp==(byte)0x07){
            s="打开取货锁,等待取货";
        }
        return s;
    }
    private static String getoutGoodsStastus(byte temp){
        String s="未定义";
        if(temp==(byte)0x00){
            s="出货已完成";
        }else if(temp==(byte)0x01){
            s="出货进行中";
        }
        return s;
    }
    private static String getoutGoodsResult(byte temp){
        String s="未定义";
        if(temp==(byte)0x00){
            s="没有检测到掉货";
        }else if(temp==(byte)0x01){
            s="检测到掉货";
        }
        return s;
    }
}
